Skip to content

syscall: build without AT_SYMLINK_NOFOLLOW#1026

Merged
tridge merged 3 commits into
RsyncProject:masterfrom
steadytao:fix/no-at-symlink-nofollow
Jul 20, 2026
Merged

syscall: build without AT_SYMLINK_NOFOLLOW#1026
tridge merged 3 commits into
RsyncProject:masterfrom
steadytao:fix/no-at-symlink-nofollow

Conversation

@steadytao

Copy link
Copy Markdown
Member

Addresses the upstream portion of #1025.

do_lstat_at() selected its fstatat() implementation whenever symlink support was enabled. Older systems such as macOS 10.6 support symlinks but do not define AT_FDCWD or AT_SYMLINK_NOFOLLOW so the unconditional reference to AT_SYMLINK_NOFOLLOW prevented syscall.c from compiling. This falls back to do_lstat() unless both AT_FDCWD and AT_SYMLINK_NOFOLLOW are available. The same availability check is applied to do_lchown_at() because its fchownat() implementation also requires AT_SYMLINK_NOFOLLOW.

@steadytao

Copy link
Copy Markdown
Member Author

@tridge Should certainly be in 3.5

@steadytao steadytao added the bug Something isn't working label Jul 16, 2026
@tridge
tridge force-pushed the fix/no-at-symlink-nofollow branch from 905e349 to abbd51b Compare July 19, 2026 22:40
@tridge

tridge commented Jul 19, 2026

Copy link
Copy Markdown
Member

@steadytao I don't think this will fix all the issues with old macos. I've dug out an old mac-mini I have here and I'm working on getting a 10.6 based build going on it.

@tridge tridge left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

turns out it does build with 10.6, merging for 3.5.0, thanks!

@tridge
tridge merged commit 9062840 into RsyncProject:master Jul 20, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants